@火凤凰
3年前 提问
1个回答
c++强制类型转换
X0_0X
3年前
c++强制类型转换有以下四种常用函数:
const_cast:const_cast转换符是用来移除变量的const或volatile限定符,该运算符用来修改类型的const或volatile属性。除了const 或volatile修饰之外, type_id和expression的类型是一样的。
static_cast:功能是把一个表达式转换为某种类型,但没有运行时类型检查来保证转换的安全性。该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。
dynamic_cast:是将一个基类对象指针(或引用)转换到继承类指针,dynamic_cast会根据基类指针是否真正指向继承类指针来做相应处理。
reinterpret_cast:必须是一个指针、引用、算术类型、函数指针或者成员指针。它可以把一个指针转换成一个整数,也可以把一个整数转换成一个指针(先把一个指针转换成一个整数,再把该整数转换成原类型的指针,还可以得到原先的指针值)。